package com.ywu.application.standard;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.annotation.EnableScheduling;

/**
 * @author YWU
 * @date 2025/10/10
 */
@SpringBootApplication
@ComponentScan(basePackages = {"com.ywu"})
@MapperScan(basePackages = {"com.ywu.application.standard.adminUser.data", "com.ywu.application.standard.api.data", "com.ywu.application.standard.apiService.data",
        "com.ywu.application.standard.appManage.data", "com.ywu.application.standard.component.data", "com.ywu.application.standard.configCenter.data",
        "com.ywu.application.standard.container.data", "com.ywu.application.standard.dataDict.data", "com.ywu.application.standard.dataSource.data",
        "com.ywu.application.standard.demandManagement.data", "com.ywu.application.standard.menu.data", "com.ywu.application.standard.redisCache.data",
        "com.ywu.application.standard.role.data", "com.ywu.application.standard.service.data", "com.ywu.application.standard.tenant.data",
        "com.ywu.application.standard.thirdExec.data", "com.ywu.application.standard.wiki.data", "com.ywu.application.standard.fileSys.data"})
@EnableDiscoveryClient
@EnableCaching
@EnableScheduling
@EnableAsync
@EnableFeignClients(basePackages = {"com.ywu.gateway.spi"})
public class YwuApplication {
    public static void main(String[] args) {
        SpringApplication.run(YwuApplication.class, args);
    }
}
